home *** CD-ROM | disk | FTP | other *** search
/ MacPeople 1997 August 15 / MACPEOPLE-1997-08-15.ISO.7z / MACPEOPLE-1997-08-15.ISO / アップル関連 / ARA CO アップデート / モデム用 / HUCOM V34ESII / HUCOM V34ESII next >
Text File  |  1996-06-22  |  9KB  |  493 lines

  1. !  HUCOM-EX / HUCOM Simple 288 / HUCOM V34ESII  CCL File for ARA ver 2.1J
  2. !    Created by kan Kobayashi , HUCOM Inc.  in June 1996.
  3. !
  4. !  'mlts' resource info for this modem:
  5. !    byte 1 == 01 -> modem HAS builtin reliability protocols
  6. !    byte 2 == 01 -> reserved by Apple
  7. !    byte 3 == 36 -> max hex chars in varstr 7 (54 dec)
  8. !    byte 4 == 36 -> max hex chars in varstr 8
  9. !    byte 5 == 36 -> max hex chars in varstr 9
  10. !    
  11. @ORIGINATE
  12. @ANSWER
  13. !
  14. ! set up the modem - label range is 1-10
  15. !
  16. ! Mac talks to the modem at 38400 bps.  
  17. serreset 38400, 0, 8, 1
  18. !
  19. ! reset the serial port
  20. HSReset 0 0 0 0 0 0
  21. settries 0
  22. !
  23. @LABEL 1
  24. matchclr
  25. matchstr 1 3 "OK¥13¥10"
  26. ! &F  - recall factory settings
  27. ! &D3 - Reset Modem on On-to-Off DTR transitions
  28. ! &K3 - Enable CTS/RTS Hardware flow control
  29. ! W2S95=40  - Connect result code reports modem speed and protocol and compression
  30. ! S0=0 - Don't answer calls
  31. ! E0   - Turn command echo off
  32. write "AT&F¥¥N0&D3&K3W2S95=40S0=0L1E0¥13"
  33. matchread 30
  34. inctries
  35. iftries 2 71
  36. !
  37. ! Reset the Modem
  38. !
  39. DTRSet
  40. pause 5
  41. DTRClear
  42. pause 5
  43. DTRSet
  44. flush
  45. jump 1
  46. !
  47. @LABEL 3
  48. ! Modem responding & configured.
  49. ! determine if reliable link is requested.
  50. !
  51. ! if modem mnp10 link requested (var 4 == 2) then jump label 4
  52. ifstr 4 4 "2"
  53. !
  54. ! if modem v42 link requested (var 4 == 1) then jump label 5
  55. ifstr 4 5 "1"
  56. !
  57. ! if no modem v42 link requested (var 4 == 0) [same as ARA 1.0] then jump label 9
  58. ifstr 4 9 "0"
  59. !
  60. ! else invalid value in var 4; exit w/error
  61. jump 76
  62. !
  63. @LABEL 4
  64. !  yes, MNP10 link is requested.  OK for MNP10 -> MNP4 -> normal mode
  65. matchclr
  66. matchstr 1 7 "OK¥13¥10"
  67. write "AT¥¥N3S48=128-K1)M1¥13"
  68. matchread 300
  69. jump 71
  70. !
  71. @LABEL 5
  72. ! yes, v42 link is requested.  OK for LAP-M -> MNP4 -> normal mode.
  73. matchclr
  74. matchstr 1 7 "OK¥13¥10"
  75. write "AT¥¥N3S48=128¥13"
  76. matchread 300
  77. jump 71
  78. !
  79. @LABEL 7
  80. ! if we DID want v42b in the modem, this is where it would go,
  81. ! but since the cpu does a better job at compressing compressable
  82. ! files, this setup stuff is commented out.  the matchstrings and
  83. ! associated labels have been left in.
  84. !
  85. !matchclr
  86. !matchstr 1 9 "OK¥13¥10"
  87. !write "AT%C3¥13"
  88. !matchread 300
  89. !jump 71
  90. !
  91. @LABEL 9
  92. ! If speaker on flag is true, jump to label 13.  Else turn off the speaker.
  93. ifstr 2 13 "1"
  94. pause 5
  95. matchclr
  96. matchstr 1 13 "OK¥13¥10"
  97. write "ATM0L0¥13"
  98. matchread 30
  99. jump 71
  100. !
  101. ! modem ready, so enable answering or originate a call - label range is 11-30
  102. !
  103. @LABEL 13
  104. pause 5
  105. ifANSWER 62
  106. !
  107. ! if normal dialing (parm 6 == 0) jump to 19
  108. ifstr 6 19 "0"
  109. !
  110. ! if blind dialing (parm 6 == 1) jump to 17
  111. ifstr 6 17 "1"
  112. !
  113. ! if manual dialing (parm 6 == 2) jump to 15 
  114. ifstr 6 15 "2"
  115. !
  116. ! else invalid value in var 6; exit w/error
  117. jump 76
  118. !
  119. @label 15
  120. note "手動ダイアル中。" 3
  121. ! X1 to ignore dialtone & busy for manual dialing, D to dial
  122. write "ATX1D ¥13"
  123. jump 32
  124. !
  125. @label 17
  126. note "ダイアルトーンを無視してダイアル中。" 3
  127. matchclr
  128. matchstr 1 19 "OK¥13¥10"
  129. ! X1 to ignore dialtone & busy for blind dialing
  130. write "ATX3¥13"
  131. matchread 30
  132. jump 71
  133. !
  134. @label 19
  135. ! this is where we break up long dialstrings
  136. !
  137. ! parm 1 is always the full dialstring from the conn doc
  138. note "^1 をダイアル中。" 3
  139. ! parm 3 is always "p" for pulse & "t" for tone
  140. !
  141. ! if parm 8 == blank (complete dialstring in parm 7)
  142. !  then jump to label 27 & dial parm 7
  143. ifstr 8 27 " "
  144. !
  145. ! if parm 9 == blank (complete dialstring in parms 7 & 8)
  146. !  then jump to label 24 & dial parm 7 & 8
  147. ifstr 9 24 " "
  148. !
  149. !  else dial parm 7 & 8 & 9 (complete dialstring in parms 7, 8 & 9)
  150. matchclr
  151. matchstr 1 21 "OK¥13¥10"
  152. ! parm 7 holds first string fragment
  153. write "ATD^3^7;¥13"
  154. matchread 400
  155. ! modem not responding; bailout.
  156. jump 71
  157. @label 21
  158. ! parm 8 holds second string fragment
  159. matchclr
  160. matchstr 1 22 "OK¥13¥10"
  161. write "ATD^3^8;¥13"
  162. matchread 400
  163. ! modem not responding; bailout.
  164. jump 71
  165. @label 22
  166. ! parm 9 holds last string fragment
  167. write "ATD^3^9¥13"
  168. jump 32
  169. !
  170. @label 24
  171. matchclr
  172. matchstr 1 25 "OK¥13¥10"
  173. ! parm 7 holds first string fragment
  174. write "ATD^3^7;¥13"
  175. matchread 400
  176. ! modem not responding; bailout.
  177. jump 71
  178. @label 25
  179. ! parm 8 holds last string fragment
  180. write "ATD^3^8¥13"
  181. jump 32
  182. !
  183. @label 27
  184. ! parm 7 holds entire string
  185. write "ATD^3^7¥13"
  186. jump 32
  187. !
  188. !    connecting - label range is 31-60
  189. !
  190. @LABEL 32
  191. matchclr
  192. !
  193. matchstr 1  34 "CONNECT 1200¥13¥10"
  194. matchstr 2  35 "CONNECT 2400¥13¥10"
  195. matchstr 3  36 "CONNECT 4800¥13¥10"
  196. matchstr 4  37 "CONNECT 7200¥13¥10"
  197. matchstr 5  38 "CONNECT 9600¥13¥10"
  198. matchstr 6  39 "CONNECT 12000¥13¥10"
  199. matchstr 7  40 "CONNECT 14400¥13¥10"
  200. matchstr 8  41 "CONNECT 16800¥13¥10"
  201. matchstr 9  42 "CONNECT 19200¥13¥10"
  202. matchstr 10 43 "CONNECT 21600¥13¥10"
  203. matchstr 11 44 "CONNECT 24000¥13¥10"
  204. matchstr 12 45 "CONNECT 26400¥13¥10"
  205. matchstr 13 46 "CONNECT 28800¥13¥10"
  206. !
  207. matchstr 14 68 "RING¥13¥10"
  208. matchstr 15 72 "NO DIALTONE¥13¥10"
  209. matchstr 16 73 "NO CARRIER¥13¥10"
  210. matchstr 17 73 "ERROR¥13¥10"
  211. matchstr 18 74 "BUSY¥13¥10"
  212. matchstr 19 75 "NO ANSWER¥13¥10"
  213. matchstr 20 77 "DELAYED¥13¥10"
  214. matchstr 21 78 "BLACKLISTED¥13¥10"
  215. !
  216. matchstr 22 54 "PROTOCOL: NONE¥13¥10"
  217. matchstr 23 55 "PROTOCOL: ALT¥13¥10"
  218. matchstr 24 56 "PROTOCOL: LAP-M¥13¥10"
  219. matchstr 25 57 "PROTOCOL: ALT - CELLULAR¥13¥10"
  220. !
  221. matchstr 26 51 "COMPRESSION: NONE¥13¥10"
  222. matchstr 27 52 "COMPRESSION: V.42BIS¥13¥10"
  223. matchstr 28 53 "COMPRESSION: CLASS 5¥13¥10"
  224. !
  225. matchstr 29 91 "CONNECT 1200TX/75RX¥13¥10"
  226. !
  227. matchread 700
  228. ifANSWER 32
  229. jump 71
  230. !
  231. !
  232. @LABEL 34
  233. note "1200 bps で接続中" 2
  234. ! "Communicating at 1200 bps." 2
  235. CommunicatingAt 1200
  236. jump 58
  237. !
  238. @LABEL 35
  239. note "2400 bps で接続中" 2
  240. ! "Communicating at 2400 bps." 2
  241. CommunicatingAt 2400
  242. jump 58
  243. !
  244. @LABEL 36
  245. note "4800 bps で接続中" 2
  246. ! "Communicating at 4800 bps." 2
  247. CommunicatingAt 4800
  248. jump 58
  249. !
  250. @LABEL 37
  251. note "7200 bps で接続中" 2
  252. ! "Communicating at 7200 bps." 2
  253. CommunicatingAt 7200
  254. jump 58
  255. !
  256. @LABEL 38
  257. note "9600 bps で接続中" 2
  258. ! "Communicating at 9600 bps." 2
  259. CommunicatingAt 9600
  260. jump 58
  261. !
  262. @LABEL 39
  263. note "12 kbps で接続中" 2
  264. ! "Communicating at 12000 bps." 2
  265. CommunicatingAt 12000
  266. jump 58
  267. !
  268. @LABEL 40
  269. note "14.4 kbps で接続中" 2
  270. ! "Communicating at 14400 bps." 2
  271. CommunicatingAt 14400
  272. jump 58
  273. !
  274. @LABEL 41
  275. note "16.8 kbps で接続中" 2
  276. ! "Communicating at 16800 bps." 2
  277. CommunicatingAt 16800
  278. jump 58
  279. !
  280. @LABEL 42
  281. note "19.2 kbps で接続中" 2
  282. ! "Communicating at 19200 bps." 2
  283. CommunicatingAt 19200
  284. jump 58
  285. !
  286. @LABEL 43
  287. note "21.6 kbps で接続中" 2
  288. ! "Communicating at 21600 bps." 2
  289. CommunicatingAt 21600
  290. jump 58
  291. !
  292. @LABEL 44
  293. note "24 kbps で接続中" 2
  294. ! "Communicating at 24000 bps." 2
  295. CommunicatingAt 24000
  296. jump 58
  297. !
  298. @LABEL 45
  299. note "26.4 kbps で接続中" 2
  300. ! "Communicating at 26400 bps." 2
  301. CommunicatingAt 26400
  302. jump 58
  303. !
  304. @LABEL 46
  305. note "28.8 kbps で接続中" 2
  306. ! "Communicating at 28800 bps." 2
  307. CommunicatingAt 28800
  308. jump 58
  309. !
  310. ! V42bis Link Connections.
  311. ! userhook 3 tells ARA that a modem to modem compression protocol has been negotiated
  312. !
  313. @LABEL 51
  314. ! No Compression.
  315. jump 32
  316. !
  317. @LABEL 52
  318. ! V42bis Compression.
  319. userhook 3
  320. jump 32
  321. !
  322. @LABEL 53
  323. ! MNP5 Compression.
  324. userhook 3
  325. jump 32
  326. !
  327. !
  328. ! V.42 link connections.
  329. ! Tell ARA with USERHOOK 2 that a reliable modem link has been established.
  330. !
  331. @LABEL 54
  332. jump 32
  333. !
  334. @LABEL 55
  335. note "MNP リンクが成立。" 2
  336. ! "MNP reliable link established." 2
  337. userhook 2
  338. jump 32
  339. !
  340. @LABEL 56
  341. note "LAP-M リンクが成立。" 2
  342. ! "LAP-M reliable link established." 2
  343. userhook 2
  344. jump 32
  345. !
  346. @LABEL 57
  347. note "MNP 10 リンクが成立。" 2
  348. ! "MNP10 reliable link established." 2
  349. userhook 4
  350. jump 32
  351. !
  352. @LABEL 58
  353. ! set the serial port handshake options for CTS
  354. HSReset 0 1 0 0 0 0
  355. !
  356. ! Connection established. In ORIGINATE mode pause before exit.
  357. !
  358. ifANSWER 59
  359. pause 30
  360. @LABEL 59
  361. exit 0
  362. !
  363. ! @ANSWER
  364. ! Set the modem to answer on 1st ring - label range is 61-70
  365. !
  366. @LABEL 62
  367. matchclr
  368. matchstr 1 32 "OK¥13¥10"
  369. write "ATS0=2)M0¥13"
  370. matchread 30
  371. jump 71
  372. !
  373. !
  374. @LABEL 68
  375. ifORIGINATE 32
  376. ! claim the serial port
  377. userhook 1
  378. note "電話に応対しています。" 2
  379. jump 32
  380. !
  381. !
  382. ! error messages - label range is 71-90
  383. !
  384. ! Modem Not Responding
  385. @LABEL 71
  386. exit -6019
  387. !
  388. ! No Dial Tone
  389. @LABEL 72
  390. exit -6020
  391. !
  392. ! No Carrier or Error
  393. @LABEL 73
  394. exit -6021
  395. !
  396. ! Busy
  397. @LABEL 74
  398. exit -6022
  399. !
  400. ! No Answer
  401. @LABEL 75
  402. exit -6023
  403. !
  404. ! Invalid Varstring Value
  405. @LABEL 76
  406. exit -6027
  407. !
  408. ! DELAYED
  409. @LABEL 77
  410. exit -6022
  411. !
  412. ! BLACKLISTED
  413. @LABEL 78
  414. exit -6022
  415. !
  416. ! On Hook Modem
  417. @LABEL 91
  418. note "先方が電話を切りました。" 2
  419. matchclr
  420. matchstr 1 92 "OK¥13¥10"
  421. pause 10
  422. write "+++"
  423. matchread 15
  424. !
  425. @LABEL 92
  426. matchclr
  427. matchstr 1 32 "NO CARRIER¥13¥10"
  428. matchstr 2 32 "OK¥13¥10"
  429. matchstr 3 32 "ERROR¥13¥10"
  430. pause 3
  431. write "ATH¥13"
  432. matchread 30
  433. jump 91
  434. !
  435. !
  436. ! Hang up the modem - label range is 101-120
  437. !
  438. @HANGUP
  439. @LABEL 102
  440. settries 0
  441. HSReset 0 0 0 0 0 0
  442. !
  443. @LABEL 105
  444. !
  445. ! Try to get control of the modem.
  446. !
  447. matchclr
  448. matchstr 1 108 "OK¥13¥10"
  449. pause 10
  450. write "+++"
  451. matchread 15
  452. !
  453. @LABEL 108
  454. !-------------------
  455. ! secondly try ATH
  456. !-------------------
  457. matchclr
  458. matchstr 1 111 "NO CARRIER¥13¥10"
  459. matchstr 2 111 "OK¥13¥10"
  460. matchstr 3 111 "ERROR¥13¥10"
  461. pause 3
  462. write "ATH¥13"
  463. matchread 30
  464. inctries
  465. iftries 3 71
  466. !---------------------------------------
  467. ! finaly try On-to-Off DTR transitions
  468. !---------------------------------------
  469. DTRSet
  470. pause 5
  471. DTRClear
  472. pause 5
  473. DTRSet
  474. flush
  475. jump 105
  476. !
  477. ! recall the factory settings.
  478. !
  479. @LABEL 111
  480. pause 15
  481. matchclr
  482. matchstr 1 114 "OK¥13¥10"
  483. write "AT&FS0=0¥13"
  484. matchread 30
  485. jump 71
  486. !
  487. @LABEL 114
  488. exit 0
  489. !
  490. ! labels 121-128 are reserved for future emergency hacks
  491. !
  492.